{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "00ea4161",
   "metadata": {},
   "source": [
    "# 字典的用法总结"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "70074122",
   "metadata": {},
   "source": [
    "|序号|字典的方法|用法|使用结果|注意事项|\n",
    "|---|-------|--|-------|-------|\n",
    "| 1 | 字典的删除pop() | D.pop() | 移除响应的键并返回响应值 | KeyError出现情况：key找不到 |\n",
    "| 2 | 字典的删除键 del | del info | 删除字典 | \n",
    "| 3 | 随机删除 | D.popitem() | 随机删除字典里的内容 |\n",
    "| 4 | 查询所有关键字keys()|D.keys()|a set-like object providing a view on D's keys|keys的结果是什么类型|\n",
    "| 5 | 查询所有的值value() | D.values() |  D.values() -> an object providing a view on D's values |\n",
    "| 6 | 删除字典内所有元素 | D.clear() | 从D中移除所有项目None | |\n",
    "| 7 | 字典的复制 | D.copy()| 复制一个副本 | 与赋值不同的是，不会随着父对象修改而发生变化 |\n",
    "| 8 | 创建新字典 | D.fromkeys(seq[, value]) | 创建了一个新字典，以序列 seq 中元素做字典的键，value 为字典所有键对应的初始值 | 无指定值时默认输出None |\n",
    "| 9 | get()函数返回指定键的值 | D.get(key, default=None) | 获取指定键的值 |返回指定键的值，如果键不在字典中返回默认值 None 或者指定的默认值 |\n",
    "| 10 | 以列表返回视图对象 | D.items() | 以列表返回视图对象，是一个可遍历的key/value 对 | 视图对象不是列表，不支持索引，可以使用 list() 来转换为列表 |\n",
    "| 11 | 更新字典 | D.update(D2) | 把字典参数 dict2 的 key/value(键/值) 对更新到字典 dict 里 |"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "627b3e7b",
   "metadata": {},
   "source": [
    "* 所有字典都是无序的，因为它不会维持插入的顺序。如果需要在输出中对字典排序，要使用sorted内置函数\n",
    "* items方法允许按行迭代处理一个字典，按键/值对迭代处理。一次迭代中，items方法会向for循环返回下一个键和它的关联值。\n",
    "* 如果试图访问一个字典中不存在的键，会导致一个KeyError.出现KeyError时，程序会由于运行时错误崩溃。\n",
    "* 访问一个键之前，可以通过确保字典中每个键都有一个关联值来避免KeyError.尽管这里in和not in操作符可以提供帮助，不过更成熟的技术是使用setdefault方法。"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "9337f7ba",
   "metadata": {},
   "source": [
    "# 列表的用法总结"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "770a8d4a",
   "metadata": {},
   "source": [
    "|序号|列表的方法|用法|使用结果|注意事项|\n",
    "|---|-------|--|-------|-----|\n",
    "| 1 | 返回列表元素个数 | len() | 返回列表元素个数 | |  \n",
    "| 2 | 最大值 | max() | 返回列表元素中的最大值 | 当其中的元素全部为数字类型时，直接根据值的大小比较。当其中的元素全部为字符串类型(string)时，则比较的是每个字符串元素的第一个字符的 ASCII 的大小。如果列表或者元组中的元素为数字类型和字符串类型混杂时，则无法比较 |  \n",
    "| 3 | 最小值 | min() | 返回列表元素中的最小值 | 与最大值同样 |   \n",
    "| 4 | 转化为列表 | list( seq ) | 将元组或字符串转换为列表 | 元组与列表是非常类似的，区别在于元组的元素值不能修改，元组是放在括号中，列表是放于方括号中 | \n",
    "| 5 | 列表末尾添加新的对象 | list.append(添加的内容) | 在列表的末尾加入新的对象 | |\n",
    "| 6 | 用新列表扩展原来的列表 | list.extend() | 用于在列表末尾一次性追加另一个序列中的多个值 | 只接受一个列表作为参数，并将该参数的每个元素都添加到原有的列表中,和append区分一下 |\n",
    "| 7 | 统计元素出现次数 | list.count(统计对象) | 用于统计某个元素在列表中出现的次数 |  | \n",
    "| 8 | 找出索引位置 | list.index(x[, start[, end]]) | 用于从列表中找出某个值第一个匹配项的索引位置 | x-- 查找的对象,start-- 可选，查找的起始位置,end-- 可选，查找的结束位置。|\n",
    "| 9 | 将对象插入指定位置 | list.insert(index, obj) | 用于将指定对象插入列表的指定位置 | index -- 对象obj需要插入的索引位置，obj -- 要插入列表中的对象。 |\n",
    "| 10 | 移除列表元素 | list.pop([index=-1]) | 用于移除列表中的一个元素（默认最后一个元素），并且返回该元素的值 | index -- 可选参数，要移除列表元素的索引值，不能超过列表总长度，默认为 index=-1，删除最后一个列表值 |\n",
    "| 11 | 已知所要移除的对象 | list.remove(obj) | 用于移除列表中某个值的第一个匹配项 | obj -- 列表中要移除的对象。 |\n",
    "| 12 | 清空列表 | list.clear() | clear() 函数用于清空列表，类似于 del a[:]。 ||\n",
    "| 13 | 复制列表 | list.copy() | 用于复制列表 |"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "a2617dce",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.8.8"
  },
  "toc": {
   "base_numbering": 1,
   "nav_menu": {},
   "number_sections": true,
   "sideBar": true,
   "skip_h1_title": false,
   "title_cell": "Table of Contents",
   "title_sidebar": "Contents",
   "toc_cell": false,
   "toc_position": {},
   "toc_section_display": true,
   "toc_window_display": false
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
